// 配置axios基地址
axios.defaults.baseURL = 'https://hmajax.itheima.net'

// 抽取轻提示函数
function showToast(msg) {
  const toastDom = document.querySelector('.my-toast')
  // 实例化toast组件
  const toast = new bootstrap.Toast(toastDom)
  // 修改内容并显示
  document.querySelector('.toast-body').innerText = msg
  toast.show()
}
// showToast('hello itheima')

// 3.封装一个检验是否登录的函数
function checkLogin(){
  const token = localStorage.getItem("token")
  // 如果没有登录，则做登录拦截
  if (!token){
    // 提示用户，过一秒做跳转登录
    showToast("当前暂未登录")
    setTimeout(()=>{
      location.href = "./login.html"
    },1000)
  }
}


// 拦截器
// 请求拦截
axios.interceptors.request.use((config)=>{
  // 对config进行包装（添加请求头的token）
  const token = localStorage.getItem("token")
  // 有token则携带，没有就放行
  if(token){
    config.headers.Authorization = token
  }
  return config
},(err)=>{
  // 返回失败的promise对象
  return Promise.reject(err)
})
// 响应拦截
axios.interceptors.response.use(({data})=>{
  return data
},(err)=>{
  if(err.response.status === 401){
    // token失效，清除token,返回登录页
    localStorage.removeItem("token")
    showToast("登录失效，请重新登录")
    setTimeout(()=>{
      location.href = "./login.html"
    },1000)
  }
  return Promise.reject(err)
})

// 4.退出登录
function registerLogout() {
  document.querySelector("#logout").addEventListener("click", () => {
    // 删除token
    localStorage.removeItem("token")
    // 跳转登录页
    location.href = "./login.html"
  })

}

// 2.更新用户名
function renderUserName() {
  const username = localStorage.getItem("username")
  document.querySelector(".username").innerHTML = username
}
